home *** CD-ROM | disk | FTP | other *** search
Wrap
Text File | 2002-01-31 | 86.0 KB | 3,039 lines
## riot.irc - by filbert ## ## based on coke by reptile (which was based on PhoEniX by Vassago), ## mods by filbert ## ## known mods: ## net alias (by: vassago) ## improved help (by: filbert) ## war shit (by: pain) ## save function (by: vassago, deletions by filbert) ## netsplit join and wholeft binds (by filbert) ## kewl azkee'z (by filbert) ## ## ## this skript shuld be %100 backdoor free.. if its not, then ## the back door is tew ereet 4 me to have been able to find.. ## ## EVAL echo EVAL echo .________________________________________. EVAL echo |:::: ____|: |:::: :| .:|: EVAL echo |::: : |: |::: ::|__. :__.: EVAL echo |:: |:|:. |:: :::| :|:. |: EVAL echo .________|__________|__________| :|___.:. EVAL echo iRC RioT - one.point.oh - by filbert EVAL echo . .. _______.. . /RioT 4 HeLP .. .________ .. . EVAL echo . ... ____.. . /ReGiSTeR ToDaY . .._____... .. EVAL ^set input_prompt [ ] |0%| Done... @ mcount = 0 @ kcount = 0 @ msensor = 2 @ ksensor = 3 @ msgsensor = 5 @ notsensor = 9 @ ctcpsensor = 3 @ nicksensor = 3 @ msgcount = 0 @ notcount = 0 @ ctcpcount = 0 @ dccsent = 0 @ dcclimit = 10 @ msgmax = 8 @ nickcnt = 0 @ resetcount = 16 @ ignorecount = 300 @ OPVIEWING = [OFF] @ TOOPVIEW = [OFF] @ AUTOGET = [ON] @ AUTOSEND = [ON] @ AUTOCLOSE = [OFF] @ NOISE = [ON] @ LOADFILE = [OFF] @ FRIENDADD = 0 @ PRIVADD = 0 EVAL @ OFFERFILE = [~/offer.riot] EVAL @ SECURFILE = [~/secure.riot] EVAL @ UPLOADDIR = [$W] EVAL @ DOWNLOADDIR = [$W] EVAL @ savefile = [$HOME/.riot.save] EVAL @ backup = [$HOME/.riot.bakup] EVAL @ AWAYFLE = [$savefile\.away] @ SECURITYFLAG = [OFF] @ MYSEND = [NO] @ GETCOUNT = 0 @ TOTPACK = 0 @ OVERWRITE = [OFF] assign fingermsg -RioT- one-point-oh by.. filbert assign versionmesg -RioT- one-point-oh by.. filbert assign default_server irc.ais.net:6661 assign flood_msg -FLooD- assign ignore_types MSGS CTCP NOTICES INVITES NOTES CRAP assign defumes Do i HaVe TeW..?? assign idlemes iM NoT HoMe RiGHT NoW... assign signmsg -LeaViNG- assign shell_pgm csh assign mode *** Mode change "$2-" on channel [$1] by $0. assign away *** You are have been marked as being away. assign back *** You are no longer marked as being away. assign whois.1 *** $1 is $2@$3 [$5-] assign whois.2 *** On channels: $1- assign whois.3 *** On server :$1: [$2-] assign bans *** [$1] $2- assign top *** Topic for [$1] is: $2- assign topc *** $0 has changed the topic on [$1] to: $2- assign awaym *** $0 is away -:$1-:- assign nick *** [$0] $1 is now known as $2. assign leave *** $0 has left [$1] assign join *** $1 [$2@$3] has joined channel [$0] assign spub <${N}> $1- assign pub <$0> $2- assign pk -KiCKeD- assign PAUSES ON assign flood_ok $help_service assign OLD_STATUS $STATUS_FORMAT assign fingermsg -RioT- one-point-oh by.. filbert assign default_server irc.uoknor.edu 6667 assign flood_msg [-RioT-] -FLooD- assign mail_pgm mail assign shell_pgm csh assign sd [-RioT-] assign ilogo [-RioT-] assign iver [one-point-oh] assign elon off assign dont do assign awayfle away.log assign defban n assign change_stat On assign ban_name Normal assign sdtmes On assign showkill On assign ctcp_auto Off assign floodp On assign chanprot On assign isaway No assign mode_lock None assign setaw On assign logirc Off assign ainv Off assign idle_time 5 assign aprot On assign nhp Off assign rejoin On assign awaystat On assign defumes Bats in the dryer... assign idlemes Automatically set away. assign signmsg I'm outta here! assign bogus_patterns *fuck* *shit* *suck* *dick* *penis* *cunt* *haha* *fake* *split* *ass* *hehe* *bogus* *yawn* *whitehouse* EVAL ^set input_prompt [.] |5%| Done... ^set status_mail [-MAiL-][%M] ^set status_format [-RioT-] [%T] [%*%@]%N%#%S%H%B%Q%A%C%+%I%O%M%F %W%>%U ^set novice off ^set exec_protection off ^set status_user [-RioT-] ^set auto_unmark_away off ^set auto_whowas off ^set continued_line ^set indent on ^set history 20 ^set tab_max 5 ^set show_who_hopcount on ^set dcc_block_size 1024 ^set max_recursions 150 ^set show_away_once on ^set send_ignore_msg off ^set hide_private_channels off ^set channel_name_width 12 ^set highlight_char bold ^set beep_max 3 ^set clock_24hour off ^set verbose_ctcp off ^set warn_of_ignores on ^set beep_when_away 0 ^set beep_on_msgs on ^set show_end_of_msgs off ^set status_window ^ ^set show_channel_names on ^set no_ctcp_flood on ^set flood_warning off ^set suppress_server_motd on ^set lastlog 40 ^set lastlog_level all dcc ^set mail 1 EVAL ^set input_prompt [o] |10%| Done... bind ^E parse_command elite bind ^O parse_command ig $, bind ^W next_window bind ^X^X parse_command tk.delnick bind ^! /wholeft bind ^# /getonserv bind meta1-[ meta2 bind meta1-O meta2 bind meta2-A backward_history bind meta2-B forward_history bind meta2-C forward_character bind meta2-D backward_character bind meta1-t parse_command tt bind ^B self_insert bind ^_ self_insert EVAL ^set input_prompt [O] |15%| Done... bind ^V self_insert bind ^A self_insert bind ^Z stop_irc bind ^\ switch_channels bind ^O parse_command /ig $, bind ^I parse_command ^getmsg 1 $msglist bind ^R parse_command ^getmsg -1 $msglis0t alias ww whowas alias scan names $C alias sc names $C alias n notice alias wi whois alias unignore /noig $0 alias chops /w -chops alias re redirect alias c mode $C $0- alias sb { ^on 367 -"*" if ([$0]) {/mode $0 +b} {/mode $C +b } } EVAL ^set input_prompt [0] |20%| Done... alias dr //dcc rename alias dl //dcc list alias dc //dcc chat alias ex exec alias wii whois $0 $0 alias ls exec ls -al alias cat exec cat alias r msg , $0- alias m msg $0 $1- alias chat //dcc chat $decode($chatter) alias nochat //dcc close chat $decode($chatter) alias rmode ^set status_mode (+%+) alias nokey quote MODE $C -k $chankey alias nnotice quote NOTICE $0 :$1- alias enickonly {^assign FUNCTION_RETURN $encode($left($index(! $0) $0))} ^enickonly alias pecho {^xecho -level crap $sd $0-} alias mc quote MODE $C -lsnmpitmk $chankey alias ml quote MODE $C +inst-lmpmk $chankey alias mn quote MODE $C +nst-ilmpmk $chankey alias autoping ap alias autoping { ^set status_user Lag: ? [-RioT-] /quote PING $time() $S } alias register { /notice $N $sd THANK YOU 4 REGISTERING $ilogo $iver... /exec echo NICK: $N - REGISTERED: $ilogo $iver - | mail filbert@quiknet.com } on ^raw_irc "% PONG *" { if ([$0]==[$S]) { ^assign lagtime ${time()-mid(1 999 $3)} if (lagtime==0) {/set status_user [-RioT-]} {/set status_user Lag: $lagtime [-RioT-]} } } ### Timer/Idle Control on -timer "*" { /set status_user Lag: ? [-RioT-] /quote PING $time() $S /^netclean if (rmatch($0 %:00%)) {/echo $sd The time is now $0\.} } on -idle "*" { if (([$0]==[$idle_time])&&([$isaway]==[No])&&([$setaw]==[On])) { /setaway $idlemes /echo $sd Setting you away after being idle for $idle_time minutes. } /quote PONG $S } alias i inv $, alias bkick bk $0- alias deop dop $0- alias mop mass o alias mdop mass d alias mv mass v alias mdv mass s alias mk mass k alias lk mass lk alias nickonly {^assign FUNCTION_RETURN $left($index(! $0) $0)} alias join if ((![$0])||([&]==[$[1]0])||([#]==[$[1]0])||([$0]==[0])||([-]==[$[1]0])) { //join $0- } { //join #$0- } alias leave if (![$0]) { //leave $C } { if (([&]==[$[1]0])||([#]==[$[1]0])||([$0]==[*])) { //leave $0 } { //leave #$0 } } alias safe {^assign FUNCTION_RETURN $strip(;#\(\)+*/\\=\{\}<>!$$%^~`,?|'\" $0-)} alias j join alias l { if ([$0]) {/leave $0-} {/leave *} } ### TAB Message List Routines alias addmsg { @ matched = rmatch($0 $^\1-) if (matched) { @ msglist = [$(0-${matched-1}) $(${matched+1}-)] } { @ msglist = [$(0-${msgmax-1})] } @ msgcnt = 0 ^assign -matched } alias getmsg { @ msgcnt = msgcnt + [$0] if ( #msglist < msgcnt ) {@ msgcnt = 1} if (msgcnt <= 0) {@ msgcnt = #msglist} @ junk = K ## [msg] /type ^U$junk $^^{[$($msgcnt)]} } alias pause { if ([$PAUSES] == [ON]) { ^assign JUNK1 $"-=+[SLaP DaH ENtER]+=-" ^assign -JUNK1 } } alias tk.delnick { if (tk.msgcnt == 0) { echo *** Nickname: $word(0 $tk.msglist) removed. @ tk.msglist = [$notword(1 $tk.msglist)] } { echo *** Nickname: $word(${tk.msgcnt-1} $tk.msglist) removed. @ tk.msglist = [$notword($tk.msgcnt $tk.msglist)] } type ^U } alias notword { if ([$0]>0) { if (([$0]>1)&&([$0] < rmatch($~ $1-))) { @ nw.sep = [ ] } { @ nw.sep = [] } @ function_return = [$(1-${[$0]-1})] ## [$nw.sep] ## [$(${[$0]+1}-)] } { @ function_return = [$1-] } } EVAL ^set input_prompt [O] |25%| Done... alias minnot { @ noticecnt = 0 ^assign -lastnoter ^assign -ntemp } alias userdomain @ function_return = LEFT($INDEX(@ $0) $0)##[@]##MID(${1+INDEX(. $0)} 99 $0) ### Message Handler Commands on ^msg "*" { ^assign msghost $safe($Userhost()) if ([$floodcheck($encode($0) MSG $msghost $1-)]!=[FLOOD]) { if ([$encode( *$0* $1-)]!=[$lmes]) { if ([$sdtmes]==[ON]) {/echo [$0:$Userdomain($msghost)] $1-} {/echo [$0] $1-} } if ([$isaway]==[YES]) { ^exec echo "[$Z] [$safe($0):$userdomain($msghost)] $safe($1-)" >> $awayfle @ away_messages = away_messages + 1 } ^assign lmes $encode( *$0* $1-) } {^assign lmes $encode( *$0* [Flood Detected])} ^addmsg $0 $msglist } alias dirlm { if ([$0]) {//msg $0 $decode($lmes)} {/say $decode($lmes)} } on ^send_msg * { echo [$0] $1- ^addmsg $0 $msglist ^tk.addmsg $0 $tk.msglist } alias w { if ([$0]){ if ([$0]==[-chops]) { /who $0 * $1- } { /who $0- } } { /who * } } alias t { if ([$0]==[#*]) { //topic $0- } { //topic $C $0- } } alias inv { if ([$0]) { if ([$1]) { /invite $0- } { /invite $0 $C } } {/echo $sd You need to specify a nick to invite.} } alias s { if ([$0]) {//server $0-} {//server $default_server} } alias fing { if ([$0]) {/ctcp $0 FINGER} {/ctcp $C FINGER} } alias dop { /quote MODE $C -oo $0 $1 if ([$2]) {/dop $2-} } alias dcc { //dcc $0- if ([$0]==[SEND]) { @ dccsent = dccsent + 1 ^timer 120 /checksend $1 $2 } } ### Netsplit Detection alias netclean { foreach splittime ii { foreach splittime.$ii jj { if ( time() - splittime[$ii][$jj] > 300 ) { foreach signcross.$(ii).$jj xx { foreach signcross.$(ii).$(jj).$xx yy { ^assign -signcross[$ii][$jj][$xx][$yy] ^assign -signoffs[$xx][$yy] } } ^assign -xx ^assign -yy ^assign -isbroke[$ii][$jj] ^assign -splitname[$ii][$jj] ^assign -splittime[$ii][$jj] } } } ^assign -ii ^assign -jj } alias isbogus { if ([$3]) { @ function_return = 1 } if (rmatch(.$1. $bogus_patterns *..*)) { @ function_return = 1 } if (rmatch(.$2. $bogus_patterns *..*)) { @ function_return = 1 } } on ^channel_signoff "% % %.% %.*" { if (isbogus($1-)) {/echo *** Signoff: $1 \($2-\)} {^netbroke $encode($tolower($0)) $encode($1) $encode($2).$encode($3) $2-} } alias netbroke { ^assign signcross[$2][$0][$1] 1 ^assign signoffs[$0][$1] $2 ^assign splittime[$2] $time() if (isbroke[$2]==[]) { ^assign isbroke[$2] 1 ^assign splitname[$2] $3- ^xecho -window OpView $sd NETSPLIT: ($Z) servers: \($3-\) ^xecho -window OpView $sd .:CTRL+!: WHO LEFT ^xecho -window OpView $sd .:CTRL+#: JOIN SPLIT SERVER (new window) } } alias getonserv { /net $ii } alias netjoined { if (signoffs[$0][$1]) { if (isbroke[$signoffs[$0][$1]]) {^xecho -window OpView $sd Netjoined at $Z \($splitname[$signoffs[$0][$1]]\)} ^assign -isbroke[$signoffs[$0][$1]] ^assign -signcross[$signoffs[$0][$1]][$0][$1] ^assign -signoffs[$0][$1] } { if ([$2]==[$C]) {/echo *** $3 \($4-\) has joined channel $C} {/echo *** $3 \($4-\) has joined channel $2\} } } alias netpurge { purge isbroke purge splitname purge splittime purge signcross purge signoffs } alias purge { foreach $0 ii {/purge $0.$ii} ^assign -ii ^assign -$0 } alias lformat { @ IRCII.word = [$1-] if (@IRCII.word < [$0]) {@ function_return = [$([$0]IRCII.word)]} {@ function_return = [$IRCII.word]} } alias wholeft { foreach signoffs ii { foreach signoffs.$ii jj {^xecho -window OpView $sd $lformat(15 $decode($ii)) $lformat(10 $decode($jj)) $splitname[$signoffs[$ii][$jj]]} } ^assign -ii ^assign -jj } EVAL ^set input_prompt [o] |30%| Done... ### DCC Control Parsers on ^msg "% XDCC *" { ^assign XDCCUSER $safe($userhost()) if ([$floodcheck($encode($0) CTCP $XDCCUSER $2-)]!=[FLOOD]) {/xdccmsg $0 $XDCCUSER $2-} } on ^ctcp "% % XDCC *" { if ([$1]==[$N]) { ^assign DCCUSER $safe($userhost()) if ([$floodcheck($encode($0) CTCP $DCCUSER $3-)]!=[FLOOD]) {/xdccmsg $0 $DCCUSER $3-} } } alias dccCHECK { if (rmatch($4 ** ** ** ** ** ** **)) { ignore_flood $0 DCC-SEND $dcc_ignore ^assign FUNCTION_RETURN FALSE log DCC SEND BOMB received from $0\. } if (rmatch($4 .* */*)) { ignore_flood $0 HIDDEN-FILE $dcc_ignore ^assign FUNCTION_RETURN FALSE log DCC SEND HIDDEN FILE request received from $0\. } if ([$6] < 1024) { ignore_flood $0 FAKE-DCC $dcc_ignore ^assign FUNCTION_RETURN FALSE log FAKE DCC SEND request received from $0\. } if (([$AUTOCLOSEWHENAWAY]==[ON])&&([$isaway]==[YES])) { pecho You are AWAY: DCC request rejected and closed. nnotice $0 I am AWAY and not accepting any DCC SENDS at this time. //^dcc close get $0 $4 log You were AWAY: DCC SEND $4 from $0 request ignored and closed. } ^assign -dcc_ignore } on ^ctcp "% % DCC SEND* * *" { if ([$1]==[$N]) { ^assign dcc_ignore $safe($userhost()) if ([$dccCHECK($0-)]!=[FALSE]) { ^assign dccfile $4 if (([$AUTOGET]==[ON])&&([$AUTOCLOSE]!=[ON])) { //^dcc rename $0 $4 $DOWNLOADDIR/$4 ^exec -name DCG$0/${DOWNLOADDIR}/$4 ls ${DOWNLOADDIR}/$4 } { if ([$AUTOCLOSE]==[ON]) { xdccecho DCC SEND $4 from $0 request ignored and closed. //^dcc close get $0 $4 xdcclog DCC SEND $4 from $0 request ignored and closed. } { if (([$AUTOGET]!=[ON])&&([$AUTOCLOSE]!=[ON])) { //^dcc rename $0 $4 $DOWNLOADDIR/$4 xdccecho DCC SEND $4 from $0 added to XDCC request list. adddccrequest $DOWNLOADDIR/$4 $0 xdcclog DCC SEND $4 from $0 added to XDCC request list. } } } } } } on ^exec_error "DCG* *" { @ dcclen = [$0] @ getf = [$right(${@dcclen-3} $0)] @ idx = [$index(/ $getf)] @ filenme = [$right(${@getf-idx+1} $0)] @ nicknme = [$left($idx $getf)] xdccecho I am autogetting $filenme from $nicknme\. //^dcc get $nicknme $filenme } on ^exec "DCG* *" { @ dcclen = [$0] @ getf = [$right(${@dcclen-3} $0)] @ idx = [$index(/ $getf)] @ filenme = [$right(${@getf-idx+1} $0)] @ nicknme = [$left($idx $getf)] if ([$OVERWRITE]==[ON]) { xdccecho Autogetting $filenme from $nicknme \(Overwriting file\). //^dcc get $nicknme $filenme xdcclog Autoreceived $filenme from $nicknme\. Overwrote existing file. } { pecho $nicknme offered $filenme\ but it already exists. if ([$AUTORENAME]!=[ON]) { @ dctemp = [$"[E/X] Enter new filename or ENTER to close: "] if (dctemp!=[]) { if ([$[1]dctemp]!=[/]) {^assign dctemp ${downloaddir}/${dctemp}} pecho Getting $filenme renamed to $dctemp from $nicknme\. //^dcc rename $nicknme $filenme $dctemp //^dcc get $nicknme $dctemp xdcclog Received $filenme renamed to $dctemp from $nicknme\. } { /pecho Closing DCC GET request from $nicknme\. //^dcc close get $nicknme $filenme xdcclog Closed DCC GET request from $nicknme\. } } { ^assign dctemp $filenme\.$rand(999) pecho Autorenaming to $dctemp\ and receiving. xdcclog Autorenamed GET from $nicknme to $dctemp and received. if ([$[1]dctemp]!=[/]) {^assign dctemp ${downloaddir}/${dctemp}} //^dcc rename $nicknme $filenme $dctemp //^dcc get $nicknme $dctemp } } } ### Error Message Editing/Commenting on ^002 "*" # on ^305 "*" # on ^306 "*" # on ^443 "*" # on ^401 "% % No such nick (channel)" # on ^333 "*" /echo *** Topic for $1 set by $2 on $mid(4 15 $stime($3)) alias do301 { ^on ^301 "*" { if ([$0]!=[$N]) {/echo *** $0 is away: $1-} } } on ^404 "*" /check_synch $0- on ^482 "*" /check_synch $0- alias check_synch { if ([$0]!=[$desynch]) { if ([$0]!=[$S]) { /pecho $0 is desynched from the IRC Network. ^assign desynch $0 ^timer -delete 521 ^timer -refnum 521 180 ^assign -desynch } {/echo *** $1-} } } ### Notify Functions on ^notify_signon "*" { Userhost $0 -cmd if ([$4]!=[<UNKNOWN>]) {/echo $sd Signon at $Z for $0 [$safe($3)@$4] detected.} } on ^notify_signoff "*" /echo $sd Signoff at $Z for $0 detected. alias notify { if ([$0]) { if ([$left(1 $0)]==[-]) { //notify $0- ^assign notify.sd $rem_w($mid(1 1000 $0-) $notify.sd) } { ^assign notify.sd $notify.sd $strip(+ $0-) //notify $0- } } { /echo $sd Notify List: $notify.sd //notify + } } alias snotify { EVAL exec rm -rf $home/notify.sd wait %exec /echo $sd Saving your notify list... @notify_size = [$#notify.sd] @notify_counter = 0 while (notify_counter < notify_size) { @ind =0 ^assign -notify_write while (ind < 8) { ^assign notify_write $notify_write $word($notify_counter $notify.sd) @ind=ind+1 @notify_counter = notify_counter + 1 } EVAL exec echo 'NOTIFY $notify_write' >> $home/notify.sd wait } /echo $sd Notify list saved. } alias rem_w { @ _pattern = rmatch($0 $1-) - 1 if (_pattern != -1) {@ function_return = notw($_pattern $1-)} {@ function_return = [$1-]} } alias notw { if ([$0]) {@ _pad = [ ]} {@ _pad = []} @ _words = [$1-] @ function_return = [$leftw($0 $1-)] ## [$_pad] ## [$restw(${[$0]+1} $1-)] } alias leftw {@ function_return = [$(1-$0)]} alias restw {@ function_return = [$(${[$0]+1}-)]} ### Netsplit Hack Protection on ^mode "%.% % *+%o* *" { if ((isop($N $1))&&([$nhp]==[ON])) {/dop $1 $5 $6 $7 $3 $4} pecho NETSPLIT HACK DETECTED. On: $1 By: $3- /dop $1 $5 $6 $7 $3 $4 } ### Raw IRC MODE and KICK Protection alias mdact { if (ischanop($N $1)) { /quote MODE $1 -o $0 /echo $sd MASS DEOP DETECTED. By: $0 On: $1 if (![$donelog]) {^assign donelog On;/log $0 Mass deopped on channel $1 : Protection was activated.;^timer 30 ^assign -donelog} } @ mcount = 0 } alias kact { if (ischanop($N $1)) { /quote MODE $1 -o $0 /echo $sd MASS KICK DETECTED. By: $0 On: $1 if (![$doneklog]) {^assign doneklog On;/log $0 Mass deopped on channel $1 : Protection was activated.;^timer 30 ^assign -doneklog} } @ kcount = 0 } alias mdtest { if (([$0]==[$lastmd])&&([$0]!=[$N])) { @ mcount = mcount + tempnum ^timer 12 @ mcount = mcount - 1 if (mcount>msensor) {/mdact $0 $1} } {^assign lastmd $0]} } alias ktest { if (([$0]==[$lastmdk])&&([$0]!=[$N])) { @ kcount = kcount + 1 ^timer 12 @ kcount = kcount - 1 if (kcount>ksensor) {/kact $0 $1} } {^assign lastmdk $0} } on -raw_irc "% MODE *" { @ mdcnt = 0 @ nixcnt = 0 ^assign mde + ^assign mdech $3 ^assign nix $4- ^assign mdchnl $2 ^assign mdlam $strip(;#~- $0) ^assign mdchop $left($index(! $0) $0) if ([$3]==[-oo]) { if (([$aprot]==[On])&&([$badsplit]!=[On])) { @ tempnum = 2 /mdtest $mdchop $mdchnl } } if (([$3]==[-ooo])||([$3]==[-oooo])) { if (([$aprot]==[On])&&([$mdchop]!=[$N])) { /quote MODE $mdchnl -o $mdchop /echo $sd MASS DEOP DETECTED. By: $mdchop } } while (mid($mdcnt 1 $mdech)!=[]) { ^assign mdecc $mid($mdcnt 1 $mdech) if (([$mdecc]==[-])||([$mdecc]==[+])) {^assign mde $mdecc} { if (match($mde$mdecc +b -b -o +k -k)) { if ([$mde$mdecc]==[+b]) { if (match($word($nixcnt $nix) $ownadd)) { /echo $sd BAN ON YOU DETECTED. By: $mdchop if (([$mdchop]!=[$N])&&(ischanop($N $mdchnl))) { /quote MODE $mdchnl -b $word($nixcnt $nix) /kkick $mdchnl $mdchop | User Ban | } /log You were banned from $mdchnl by $mdchop } } if ([$mde$mdecc]==[-o]) { if (([$aprot]==[On])&&([$badsplit]!=[On])) { @ tempnum = 1 /mdtest $mdchop $mdchnl } if ([$word($nixcnt $nix)]==[$N]) {/log You were deopped on $mdchnl by $mdchop} } if ([$mde$mdecc]==[+k]) { ^assign chankey $word($nixcnt $nix) #^set status_mode ESC KEY! ^timer 12 checkmode } @ nixcnt = nixcnt + 1 } } @ mdcnt = mdcnt + 1 } if ([$mode_lock]!=[none]) { if (([$mdchop]!=[$N])&&(ischanop($N $mdchnl))) {/quote MODE $mdchnl $mode_lock} } } on -raw_irc "% KICK *" { ^assign kicker $nickonly($0) ^assign kickchan $strip(: $2) if ([$aprot]==[On]) {/ktest $kicker $kickchan} if ([$3]==[$N]) { /log You were kicked from $kickchan by $kicker if ([$REJOIN]==[ON]) {^timer 1 /quote JOIN $2} } } alias checkmode { if (!rmatch($M *k*)) {^set status_mode (+%+)} {^timer 10 checkmode} } EVAL ^set input_prompt [.] |35%| Done... ^on ^FLOOD { ^echo $0 is trying to $1 fl00d yew... ^kick $C $0 $ilogo [.FlooD.AutokicK.] } #/on ^ctcp "% % LAGD LAGD %" { #if ([$0]==[$N]) { #@ tme = [$4] #/eval set status_user Lag:${time()-tme}s #} #} ^on -CTCP "% % PING" { ^echo [-RioT-] $0 pynged yew. ^notice $0 Go PiNG S0meOne Wh0 CarEZ! $ilogo } ^on -CTCP "% % VER" { ^echo [-RioT-] $0 axed for your version... ^notice $0 $ilogo version $iver.. } ^on -CTCP "% % HELP" { ^echo [-RioT-] $0 sent you a CTCP HELP. What a fucknut.. ^notice $0 I'm no bot, fucknut! Don't ask me for help! } ^on -CTCP "% % FINGER" { ^echo [-RioT-] $0 is fingering you! Yuck! ^notice $0 That's dis-GUST-ing!! } ^on -CTCP "% % XDCC LIST" { ^echo [CoKE] $0 thinks yer a vending machine..XDCC LIST. Bah! ^notice $0 I AiNT nO VENdiN MAChiNE!!! ^assign idiot ${idiot+1} } ^alias OP { /mode $C +oooo $0 $1 $2 $3 } ^alias TOP { /mode $C +o $0 /mode $C +oo $0 $0 /mode $C +ooo $0 $0 $0 /mode $C +oo $0 $0 /mode $C +o $0 } ^alias TDOP { /mode $C -o $0 /mode $C -oo $0 $0 /mode $C -ooo $0 $0 $0 /mode $C -oo $0 $0 /mode $C -o $0 } ^alias 5OP { /me grabs $0 by his smelly shirt, and screams: /say YA GOT DAH +0!! You got that, muthaphucka? DO YOU?? /mode $C +o $0 } ^alias CK { /kick $C $0 $1- $ilogo ]ik[ } ^alias HPKICK { /say $ilogo HiPPyKiCK! /say How do you hide money from a hippie? /me watches the clock tick to zero...*buzz* /say Hide it under the soap! /kick $C $0 Gwaaaar!! $ilogo ]hpk[ } ^alias PKICK { /me pulls out the pipe and packs it full of some funky Op. /me passes the pipe to $0 and watches him take a hit. /mode $C +o $0 /say Heh... Pot Op... :) [Tha Shit!] /me watches in amusement as the DEA squad kicks in $C's door. /me grins at they gun the Op smoker down and drag him out! /kick $C $0 I'm not a chicken..yer a turkey! $ilogo ]ipk[ } ^alias S8NKICK { /say $ilogo SaTaNKiCK! /me raises his hands and chants monotonously... /me draws his sacrificial dagger and stabs $0 in the chest! /kick $C $0 Malleus...malleus... $ilogo ]s8k[ } alias NK { /kick $C $0 $ilogo <$1- |NK|> } ^alias nsautokick { ^if ([$nsknum]==[2]) { /nsbankick $0 } /kick $C $0 $ilogo ]NetseX.AutokicK[ ^assign nsknum ${nsknum+1} } EVAL ^set input_prompt [o] |40%| Done... ^alias nsbankick { /say *$0* : Three strikes, yer out, netsex-putz. /mode $C -o+b $0 $0!*@*.* /kick $C $0 $ilogo ]Netsex? Here's a foot up yer ass.[ ]nsbk[ } alias bk { if ([$0]) { @ param = [$0] if (index(! $0)!=-1) { @ band = [$1] @ kbreason = [$2-] } { @ band = [$0] @ kbreason = [$1-] } if ([$kbreason]) { ^assign kbreason ${kbreason} } { ^assign kbreason $pk } if ([$param]==[$band]) { @ param = [!$defban] } Userhost $band -CMD if ([$4]!=[<UNKNOWN>]) { @ theban = [] if ([$param]==[!n]) { ^assign theban $nban($3 $4) } if ([$param]==[!e]) { ^assign theban $0!*@* } if ([$param]==[!d]) { ^assign theban $dban($3 $4) } if ([$param]==[!h]) { ^assign theban $hban($3 $4) } if ([$param]==[!s]) { ^assign theban $sban($3 $4) } if ([$param]==[!?]) {} { if ([$theban]==[]) { /nban $3 $4 theban wait } /quote MODE $C -o+b $0 $theban /kick $C $0 $kbreason } } {/echo $sd I can't find $0 on IRC.} } {/echo $sd Usage: /BKick <BanType> <Nick> <Reason>} } ^alias BAN { /mode $C +b } ^alias NICKBAN { /mode $C +b $0 } ^alias VER { ^echo [-RioT-] Yew RuNNiN $ilogo... the none HOMMiE G SCRiPT! } ^alias M { /msg } ^alias BYE { /signoff $ilogo : $0- } ^alias CAT { ^exec cat $0 } ^alias UNFLASH { ^set status_user c ^set status_user \;\24r ^set status_user m ^set status_user ?5l ^set status_user [-RioT-] ^set status_clock c ^set status_clock \;\24r ^set status_clock m ^set status_clock ?5l ^set status_clock 666 timer 3 ^set status_clock %T echo [-RioT-] SLaP DuH CoNTRoL-L Ta FiX..... } on ^send_public "*" { if ([$0]==C) {/echo <${N}> $1-} {/echo -> <${N}> $1-} } alias flash { if (match($1 basic killer zmodem)) { ^assign fria $1 } { ^assign fria ${friar} } if ([$0]) { userhost $0 -cmd if ([$4]!=[<UNKNOWN>]) { ^echo [-RioT-] Sending a flash to $0 \($strip(~ $3)@$4\) ^exec flash $strip(~ $3)@$4 $fria } { ^echo [-RioT-] I can't find $0. } } { ^echo [-RioT-] You must specify a nick. } ^timer 2 ^assign -fria } alias superflash { if (match($1 basic killer zmodem)) { ^assign frias $1 } { ^assign frias ${friar} } if ([$0]) { userhost $0 -cmd if ([$4]!=[<UNKNOWN>]) { ^echo [CoKE] Sending a ${frias} flash to $0 \($strip(~ $3)@$4\) ^exec superflash $strip(~ $3)@$4 $frias } { ^echo [CoKE] I can't find $0. } } { ^echo [CoKE] You must specify a nick. } ^timer 2 ^assign -frias } alias nuke { if (match($1 basic killer zmodem)) { ^assign nuk $1 } { ^assign nuk ${friar} } if ([$0]) { userhost $0 -cmd if ([$4]!=[<UNKNOWN>]) { ^echo [CoKE] Sending a ${nuk} nuke to $0 \($strip(~ $3)@$4\) ^exec nuke $strip(~ $3)@$4 $nuk } { ^echo [CoKE] I can't find $0. } } { ^echo [CoKE] You must specify a nick. } ^timer 2 ^assign -nuk } alias SK { /me ! SlasheR STRIKES AGAIN! /me ! The hand of Fate lands on $0! /kick $C $0 $ilogo |SLASH/KiCK| } alias setaway { if ([$0]) { ^assign reason $strip(;#{}=!"'`- $0-) } {^assign reason $defumes} /^away - $reason - logging if yur lucky...[-RioT-] /me is away - $reason - all messages will be saved. [-RioT-] ^assign isaway Yes ^exec echo "[: $Z :] Setaway: $reason " >> $awayfle echo [-RioT-] You are set as being away. } EVAL ^set input_prompt [O] |45%| Done... alias setback { ^assign isaway No //me iZ BacK! /^away /exec cat $awayfle ^assign temp $"Save these messages: " if (([$temp]==[n])||([$temp]==[no])) { /exec rm $awayfle echo $sd Setaway message list has been deleted. } {echo $sd Setaway message list has not been deleted.;^assign -temp} ^assign -temp } ^bind ^X3 parse_command pewps ^bind ^X1 parse_command do_shrink ^bind ^X2 parse_command do_grow alias pewps { ^window back ^c ^window back } alias do_grow { if ([$ink]>=[4]) { @ ink = ink + 1 ^window shrink 1 ^echo Your MSG Window size is now ${ink} lines. } } alias do_shrink { if ([$ink]>=[5]) { @ ink = ink - 1 ^window grow 1 ^echo Your MSG Window size is now ${ink} lines. } } alias winmsg { if (rmatch($0 ON OFF)) { ^assign inky $onoff($0) ^echo $ilogo GUi System $0.... } { ^echo $ilogo GUi System $0.... } if ([$0]==[ON]) { ^do_this_shit } if ([$0]==[OFF]) { ^assign inks jeah ^undo_this_shit } } alias winbox { if (rmatch($0 top bottom)) { ^assign inkb $0 ^echo [-RioT-] Your MSG Window will be at the ${inkb} now. if ([$inky]==[On]) { ^assign inks jeah ^undo_this_shit ^do_this_shit } } { ^echo [-RioT-] Your MSG Window is set to be at the ${inkb}. } } alias winsize { if ([$0]) { if ([$0]>=[4]) { ^assign inks jeah ^assign ink $0 ^echo [-RioT-] Your MSG Window size will now be ${ink} lines. ^undo_this_shit ^do_this_shit } { ^echo [-RioT-] Your MSG Window cannot be less than 4 lines. } } { ^echo [-RioT-] Your MSG Window size is ${ink} lines. } } alias undo_this_shit { if ([$inks]==[jeah]) { ^window back ^window kill ^assign -inks ^on public_other - } } alias do_this_shit { ^eval assign ZEN $C ^eval assign in ${11-ink} ^eval window new if ([$inkb]==[top]) { ^eval window shrink $in } { ^eval window grow $in ^eval window back } ^eval window name -RioT- ^eval window level msg,notice ^eval window back ^eval window name 1 ^eval window level crap,public,wall,wallop,note ^eval join $ZEN ^on ^public_other * { if ([$inkb]==[bottom]) { xecho -window 2 <$0:$1> $2- } { xecho -window 1 <$0:$1> $2- } } ^window move 1 /window grow 4 } set status_format [-RioT-] [|%T |] (%*%@)%N%#%S%H%B%Q%A%C%+%I%O%M%F %W%>%U on ^list * echo $[15]0 $[4]1 $2- on ^who Channel comment on ^names * echo $[15]0 $1- alias GUI { ^winmsg $0 } EVAL ^set input_prompt [0] |50%| Done... alias elite { if ([$elon]==[on]&&[$dont]!=[do]) { ^elon } if ([$elon]==[off]&&[$dont]!=[do]) { ^eloff } if ([$0]==[a]) {type /} ^assign -dont } alias elon { ^assign dont do ^BIND a TYPE_TEXT 4 ^BIND b TYPE_TEXT B ^BIND c TYPE_TEXT < ^BIND d TYPE_TEXT |> ^BIND e TYPE_TEXT 3 ^BIND f TYPE_TEXT F ^BIND g TYPE_TEXT G ^BIND h TYPE_TEXT |-| ^BIND i TYPE_TEXT i ^BIND j TYPE_TEXT J ^BIND k TYPE_TEXT |< ^BIND l TYPE_TEXT L ^BIND m TYPE_TEXT M ^BIND n TYPE_TEXT |\\| ^BIND o TYPE_TEXT () ^BIND p TYPE_TEXT P ^BIND q TYPE_TEXT Q ^BIND r TYPE_TEXT R ^BIND s TYPE_TEXT $$ ^BIND t TYPE_TEXT + ^BIND u TYPE_TEXT U ^BIND v TYPE_TEXT \\/ ^BIND w TYPE_TEXT \\/\\/ ^BIND x TYPE_TEXT X ^BIND y TYPE_TEXT Y ^BIND z TYPE_TEXT Z ^BIND / parse_command elite a ^echo $ilogo ELiT0 BURiT0 is now ON.... ^assign elon off } alias eloff { ^assign dont do ^BIND a SELF_INSERT ^BIND b SELF_INSERT ^BIND c SELF_INSERT ^BIND d SELF_INSERT ^BIND e SELF_INSERT ^BIND f SELF_INSERT ^BIND g SELF_INSERT ^BIND h SELF_INSERT ^BIND i SELF_INSERT ^BIND j SELF_INSERT ^BIND k SELF_INSERT ^BIND l SELF_INSERT ^BIND m SELF_INSERT ^BIND n SELF_INSERT ^BIND o SELF_INSERT ^BIND p SELF_INSERT ^BIND q SELF_INSERT ^BIND r SELF_INSERT ^BIND s SELF_INSERT ^BIND t SELF_INSERT ^BIND u SELF_INSERT ^BIND v SELF_INSERT ^BIND w SELF_INSERT ^BIND x SELF_INSERT ^BIND y SELF_INSERT ^BIND z SELF_INSERT ^BIND / SELF_INSERT ^echo $ilogo ELiT0 BURiT0 is now OFF.... ^assign elon on } EVAL ^set input_prompt [O] |55%| Done... ### Mass Deop, Op, Give Voice, Remove Voice, LK, and Masskick alias mass { if ([$0]) { if (([$0]!=[lk])&&([$0]!=[k])) { if ([$0]==[d]) {@ mass_mode = [-ooo];^on ^names "*" /findops $$1-\;^on ^names - "*"} { if ([$0]==[o]) {@ mass_mode = [+ooo]} if ([$0]==[v]) {@ mass_mode = [+vvv]} if ([$0]==[s]) {@ mass_mode = [-vvv]} if ([$mass_mode]!=[]) {^on ^names "*" /findnonops $$1-\;^on ^names - "*"} } //names $C wait -CMD domassmode } { if ([$0]==[lk]) { ^on ^names "*" {^assign lamkick $1-} ^names $C wait ^assign lktmp no @ lcnt = 0 /pecho LKick started, please wait. while ([$(#lamkick)]>lcnt) { if (!match(@* $word($lcnt $lamkick))) { if ([$word($lcnt $lamkick)]!=[$N]) { if ([!$word($lcnt $lamkick)]!=[!]) { ^assign bkicked $word($lcnt $lamkick) ${bkicked} ^assign lktmp ppl } } } @ lcnt = lcnt + 1 } if ([$lktmp]==[ppl]) { @ lcnt = 0 while ([$(#bkicked)]>=lcnt) { /kkick $C $word($lcnt $bkicked) $pk @ lcnt = lcnt + 1 } /pecho $bkicked have been kicked from $C. } {/pecho Everyone is opped on $C\.} ^on names - "*" ^assign -bkicked ^assign -lcnt ^assign -lktmp } if ([$0]==[k]) { /pecho Masskicking everyone from $C\. ^on ^names "*" findops $$1-\;^on ^names - "*" ^names $C wait ^assign kicklist $mdchange /kickthem ^assign -mdchange ^on ^names "*" findnonops $$1-\;^on ^names - "*" ^names $C wait ^assign kicklist $mdchange /kickthem ^assign -mdchange } } } { pecho Usage: /MASS <o,d,v,s,k,lk> - O to op all non channel ops, pecho d to deop all ops on the channel, v to give non-ops voice, pecho and s to remove voice from all non-ops \(silence\), lk to pecho mass kick all non-ops from the channel, and k to masskick pecho EVERYONE from your current channel. } } alias domassmode { @ mdchangecnt = 1 while ([$(#mdchange)]>=mdchangecnt) { /mmode $C $mass_mode $decode($word(${mdchangecnt-1} $mdchange)) $decode($word($mdchangecnt $mdchange)) $decode($word(${mdchangecnt+1} $mdchange)) @ mdchangecnt = mdchangecnt + 3 } ^assign -mdchangecnt ^assign -mdchange ^assign -mass_mode } alias findops { if (([$[1]0] == [@]) && (match($0 @${N} $N)==0)) {^assign mdchange $encode($strip(@ $0)) ${mdchange}} if (([$[1]1] == [@]) && (match($1 @${N} $N)==0)) {^assign mdchange $encode($strip(@ $1)) ${mdchange}} if (([$[1]2] == [@]) && (match($2 @${N} $N)==0)) {^assign mdchange $encode($strip(@ $2)) ${mdchange}} if ([$3]) {/findops $3-} } alias findnonops { if (([$[1]0] != [@]) && (match($0 @${N} $N)==0)) {^assign mdchange $encode($strip(+ $0)) ${mdchange}} if (([$[1]1] != [@]) && (match($1 @${N} $N)==0)) {^assign mdchange $encode($strip(+ $1)) ${mdchange}} if (([$[1]2] != [@]) && (match($2 @${N} $N)==0)) {^assign mdchange $encode($strip(+ $2)) ${mdchange}} if ([$3]) {/findnonops $3-} } alias kickthem { @ mcnt = 0 if ([$kicklist]) { while ([$(#kicklist)]>mcnt){ /kkick $C $decode($word($mcnt $kicklist)) $pk @ mcnt = mcnt + 1 if ([$(#kicklist)]>mcnt) { /kkick $C $decode($word($mcnt $kicklist)) $pk @ mcnt = mcnt + 1 } } } ^assign -kicklist ^assign -mcnt } EVAL ^set input_prompt [o] |55%| Done... alias wordkick { if ([$0] == [OFF]) { EVAL ^on raw_irc - "% PRIVMSG #% *$AKICK*" ^assign -AKICK me : Wordkicking is off. } { EVAL ^on raw_irc - "% PRIVMSG #% *$AKICK*" ^assign AKICK $0- EVAL ^on -raw_irc "% PRIVMSG #% *$AKICK*" { if ([$nickonly($0)] != [$N]) {//kick $2 $nickonly($0) You said '$AKICK' <$ilogo |WK| } } me : Autokick phrase is now '$AKICK' $ilogo } } alias jokemassdeop { ^set display off if ([$0]) {^assign FAKER $0} {/EVAL ^assign FAKER $N} on ^who * { if ([$1] != [$FAKER]) { if (rmatch($2 *@*)) { ^assign mdopz $1 ${mdopz} } } } ^who -chops * wait ^set display on listmdopfake $mdopz ^assign -mdopz ^on who - * ^assign -FAKER } alias jokemode {/me change "$1-" on channel $C by $0} EVAL ^set input_prompt [.] |60%| Done... alias listmdopfake { if ([$3]) { EVAL /me change "-ooo $0 $1 $2" on channel $C by $FAKER /listmdopfake $3- } { if ([$2]) { EVAL /me change "-ooo $0 $1 $2" on channel $C by $FAKER } { if ([$1]) { EVAL /me change "-oo $0 $1" on channel $C by $FAKER } { if ([$0]) { EVAL /me change "-o $0" on channel $C by $FAKER } } } } } ### XDCC File Transfer Script alias updatecount { if ([$counting]!=[On]) { ^assign counting On @ dccsent = 0 ^on ^window * { if ([$1]==[SEND]) {@ dccsent = dccsent + 1} } //dcc list wait ^on ^window -* ^timer 1 /chgst ^assign -counting ^assign -gonnacount } } on -window "% ??? DCC SEND:* lost" { if ([$1]==[***]) {/subdccs} } on -window "% ??? DCC SEND:* %sec" { if ([$1]==[***]) {/subdccs} } on -window "% ??? DCC SEND:* closed" { if ([$1]==[***]) {/subdccs} } alias subdccs { if (dccsent>0) {@ dccsent = dccsent - 1} if (![$gonnacount]) { ^assign gonnacount On ^timer 60 /updatecount } } alias log { ^assign ltext $safe($0-) ^exec echo "| $Z | $ltext " >> $sdlog } alias iswaiting { ^assign dccfilename none ^assign liststarted no ^assign listdone no ^assign chnick $0 ^assign chfile $1 ^assign dccwaiting no ^on ^window "*" { if (([$listdone]==[no])&&([$liststarted]==[yes])) { if (([$1]==[SEND])&&([$3]==[Waiting])&&(match(*$chfile $6)!=0)&&([$2]==[$chnick])) { ^assign dccwaiting yes ^assign dccfilename $6 }} {if (([$listdone]==[no])&&([$1]==[Type])&&([$2]==[nick])&&([$3]==[status])) {^assign liststarted yes} {xecho -window $0 $1-}}} //dcc list ^on ^window -* if ([$liststarted]==[no]) {^assign dccwaiting dunno} ^assign -listdone ^assign -liststarted ^assign -chnick ^assign -chfile } EVAL ^set input_prompt [o] |65%| Done... alias checksend { /iswaiting $0 $1 if ([$dccwaiting]==[dunno]) {^timer 1 checksend $0 $1} {if ([$dccwaiting]==[yes]) { if ([$lastnotdcc]!=[$0]) {/nnotice $0 You have DCCs pending. Type /DCC GET $N\.} ^assign lastnotdcc $0 ^timer -delete 224 ^timer -refnum 224 15 ^assign -lastnotdcc ^timer 60 closesend $0 $1 }} ^assign -dccwaiting ^assign -dccfilename } alias closesend { /iswaiting $0 $1 if ([$dccwaiting]==[dunno]) {^timer 1 closesend $0 $1} {if ([$dccwaiting]==[yes]) {if ([$lastnotdcc]!=[$0]) { /XDCCecho One or more DCC SENDs to $0 have timed out. Closing.} ^assign lastnotdcc $0 ^timer -delete 224 ^timer -refnum 224 30 ^assign -lastnotdcc //^dcc close send $0 $dccfilename if (dccsent>0) {@ dccsent = dccsent - 1} }} ^assign -dccfilename } alias xdccmsg { if (match($2 HELP LIST SEND)) {$2COMMAND $0 $1 $3-} {/nnotice $0 Try /MSG $N XDCC HELP.} } alias ctcpmsg { if (rmatch($3 HELP LIST SEND)) { if (!rmatch($2 #*)) {/$3COMMAND $0 $1 $4-} { if ([$3]!=[LIST]) {/echo $sd Channel-wide XDCC command from $0\: $3\.} {/LISTCOMMAND $0 $1 $4-} } } {/nnotice $0 Try /Msg $N XDCC HELP.} } alias HELPcommand { if ([$1]!=[$LASTHELPED]) { /nnotice $0 /CTCP $N XDCC LIST - to get the list of offered packs. /nnotice $0 /CTCP $N XDCC LIST #N - to get more info on pack #N. /nnotice $0 /CTCP $N XDCC SEND #N - to send pack #N. if (([$SECURITYFLAG]==[OFF])||([$isonsecurlist($1)]==[YES])) {} {/nnotice $0 No files offered.} } ^assign LASTHELPED $1 } alias LISTcommand { if ([$1]!=[$lastlister]) { if (([$SECURITYFLAG] == [OFF]) || ([$isonsecurlist($1)] == [YES])) { if ([$2]) { if ([$[1]2] == [#]) { @ TEMP = [$2] @ NUM = right(${@TEMP-index(# $2)+1} $2) if (NUM <= TOTPACK) { xdccecho List of pack #$NUM request received from $0 @ TEMPFILE = [] @ TEMPTOT = 0 @ COUNT0 = 1 /nnotice $0 Pack: $ARRAYDESC[$NUM] /nnotice $0 Length File while (COUNT0 <= ARRAYTOTF[$NUM]) { /nnotice $0 $[10]ARRAYLENG[$NUM][$COUNT0] $X_FILE($ARRAYFILE[$NUM][$COUNT0]) @ TEMPTOT = TEMPTOT + ARRAYLENG[$NUM][$COUNT0] @ COUNT0 = COUNT0 + 1 } /nnotice $0 ---------- -------------------------------- /nnotice $0 $[10]TEMPTOT $ARRAYTOTF[$NUM] file/es } { /nnotice $0 Pack $2 doesn't exist, try /MSG $N XDCC LIST } } { /nnotice $0 XDCC LIST $2 is invalid. /MSG $N XDCC HELP.} } { if (TOTPACK > 0) { xdccecho All pack list request received from $0 @ COUNT0 = 1 /nnotice $0 Pack Description while (COUNT0 <= TOTPACK) { /nnotice $0 #$[3]COUNT0 $ARRAYDESC[$COUNT0] @ COUNT0 = COUNT0 + 1 } } { /nnotice $0 No files offered. } } } { xdccecho Unregistered user XDCC LIST REQUEST from $0\. /nnotice $0 No files offered.} } ^assign lastlister $1 } alias SENDcommand { if (([$SECURITYFLAG] == [OFF]) || ([$isonsecurlist($1)] == [YES])) { if ([$AUTOSEND] == [ON] || [$MYSEND] == [YES]) { if ([$2]) { if ([$[1]2] == [#]) { @ TEMP = [$2] @ NUM = right(${@TEMP-index(# $2)+1} $2) if (NUM <= TOTPACK) { @ dcctmp = dcclimit - dccsent if (ARRAYTOTF[$NUM]>dcctmp) { /xdccecho Sending $2 to $0 would exceed my limit of $dcclimit - $dccsent active. /nnotice $0 I already have $dccsent DCC's active. Try later please. } {/xdccecho Sending $2 to $0\. /nnotice $0 Sending you $ARRAYDESC[$NUM] @ COUNT1 = 1 @ TEMPTOT = 0 while (COUNT1 <= ARRAYTOTF[$NUM]) { /^dcc send $0 $ARRAYFILE[$NUM][$COUNT1] @ TEMPTOT = TEMPTOT + ARRAYLENG[$NUM][$COUNT1] @ COUNT1 = COUNT1 + 1 } /nnotice $0 Total files sent: $ARRAYTOTF[$NUM] /nnotice $0 You'll need $TEMPTOT bytes.}} { /nnotice $0 File $2 does not exist. /MSG $N XDCC LIST.} } { /nnotice $0 XDCC SEND $2 is invalid. /MSG $N XDCC HELP.}} { /nnotice $0 There is no such file. Try /msg $N XDCC HELP.} } {/nnotice $0 This function has been dissabled.} } { xdccecho Unregistered user XDCC SEND REQUEST from $0\. /nnotice $0 XDCC Security is on. You are not registered.} } alias xdcc { if (match($0 SEC LOAD PSEND CLOSE SAVE GET DIR AUTOCLOSE HELP LIST PLIST SEND STATUS NOTICE OFFER DOFFER LIMIT AUTOGET AUTOSEND NOISE GLIST OVERWRITE ULDIR DLDIR)) {$0MCOMMAND $1-} {/HELPMCOMMAND} } alias HELPMCOMMAND {/echo $sd Try /XDCC HELP. \(or /XDCCSTUFF).} EVAL ^set input_prompt [O] |65%| Done... alias LIMITmcommand { if ([$0]) {^assign TMPLIMIT $0 } {^assign TMPLIMIT $word(0 $"[-RioT-] Enter new limit for DCC SENDS: ")} if ([$TMPLIMIT]!=[]) { ^assign dcclimit $TMPLIMIT ^assign -TMPLIMIT } /echo $sd XDCC limit: $dcclimit } alias SECmcommand { if ([$0]) { if (match($0 LOAD NADD ADD NREMOVE REMOVE LIST)) { SEC$0 $1- } { echo $sd $0 is not a valid SECURITY command. } } { if ([$SECURITYFLAG] == [ON]) { @ SECURITYFLAG = [OFF] } { @ SECURITYFLAG = [ON] } echo $sd SECURITY: $SECURITYFLAG /chgst } } alias SECNADD { /echo $sd Searching for $0 ... Userhost $0 -cmd if ([$4]!=[<UNKNOWN>]) { ^assign tempadd $safe($3)@$4 if ([$isonsecurlist($tempadd)] == [YES]) { echo $sd $0 is already on my security list.} { /secadd $tempadd $0 } } { echo $sd I couldn't find $0 on IRC.} } alias SECADD { if ([$0]) { ^exec -name save_securfile echo $safe($0) >> $SECURFILE ^wait %save_securfile @ SECURITY_LIST = [$SECURITY_LIST ]##[$0] if ([$1]) { echo $sd Added $1!$0 to XDCC security list. /nnotice $1 You have been added to $N's XDCC security list.} { echo $sd Added $0 to XDCC security list.} } { echo $sd Who or what mask do want to add?} } alias SECLIST { /echo $sd XDCC Security List: @ COUNT = 0 while (word($COUNT $SECURITY_LIST)) { /echo $sd $word($COUNT $SECURITY_LIST) @ COUNT = COUNT + 1 } } alias SECLOAD { EVAL /echo $sd Loading XDCC security list... @ SECURITY_LIST = [] @ ERROR = 0 ^on exec_error "load_security *" { EVAL /echo $sd Error loading security list. @ ERROR = 1 } ^on ^exec "load_security *" { @ SECURITY_LIST = [$SECURITY_LIST ]##[$1] } ^exec -name load_security cat $SECURFILE ^wait %load_security if (ERROR == 0) { EVAL /echo $sd Security list loaded correctly.} {} } alias SECSAVE { @ ERROR = 0 ^on exec_error "delete_security *" echo $sd Error deleting security list. ^exec -name delete_security rm $SECURFILE ^wait %delete_security ^on exec_error "save_security *" { /echo $sd Error saving security list. @ ERROR = 1 } @ COUNT = 0 while (word($COUNT $SECURITY_LIST)) { ^exec -name save_security echo $word($COUNT $SECURITY_LIST) >> $SECURFILE wait %save_security @ COUNT = COUNT + 1 } if (ERROR == 0) { echo $sd Security list saved correctly.} {} } alias SECNREMOVE { echo [-RioT-] Trying to find $0 on IRC... userhost $0 -cmd if ([$4] != [<UNKNOWN>]) { SECREMOVE $safe($3) } { $sd Couldn't find $0 on IRC. } } alias SECREMOVE { if ([$0]) { @ TOT = 0 @ COUNT = 0 @ NEWLIST = [] while (word($COUNT $SECURITY_LIST)) { if (match(*$0* $word($COUNT $SECURITY_LIST))) { echo $sd Removing $word($COUNT $SECURITY_LIST) @ tot = tot + 1 } { @ NEWLIST = [$NEWLIST ]##[$word($COUNT $SECURITY_LIST)] } @ COUNT = COUNT + 1 } if (tot > 0) { @ SECURITY_LIST = [$NEWLIST] @ NEWLIST = [] SECSAVE } { echo $sd No matches found for pattern $0 } } { echo $sd Remove what? } } alias PSENDmcommand { if (TOTPACK > 0) { @ TMPVAR = [] @ NICKLIST = [] ^assign TMPVAR $"[-RioT-] Pack to send : " if ([$TMPVAR]) { if (TMPVAR <= TOTPACK) { ^assign NICKLIST $"[-RioT-] Nicks: " if ([$NICKLIST]) { @ COUNT2 = 0 @ MYSEND = [YES] while (word($COUNT2 $NICKLIST)) { SENDcommand $word($COUNT2 $NICKLIST) #$TMPVAR @ COUNT2 = COUNT2 + 1 } @ MYSEND = [NO] } {} } { /echo $sd Pack #$TMPVAR doesn't exist. Try /XDCC LIST. } } {} } { /echo $sd There are no packs created.} } alias LISTmcommand { if ([$0]) { if ([$[1]0] == [#]) { @ TEMP = [$0] @ NUM = right(${@TEMP-index(# $0)+1} $0) if (NUM <= TOTPACK) { @ COUNT2 = 1 @ TEMPTOT = 0 echo $sd PACK: $ARRAYDESC[$NUM] while (COUNT2 <= ARRAYTOTf[$NUM]) { echo $sd FILE: $ARRAYFILE[$NUM][$COUNT2] @ TEMPTOT = TEMPTOT + ARRAYLENG[$NUM][$COUNT2] @ COUNT2 = COUNT2 + 1 } /echo $sd TOTAL : $TEMPTOT Bytes on $ARRAYTOTF[$NUM] file/es } { /echo $sd $0 pack doesn't exist.} } { echo $sd /XDCC LIST $0 is not a valid format. Try /XDCC HELP LIST.}} { if (TOTPACK > 0) { @ COUNT2 = 1 /echo $sd Pack Description while (COUNT2 <= TOTPACK) { /echo $sd #$[2]COUNT2 $ARRAYDESC[$COUNT2] @ COUNT2 = COUNT2 + 1 } } { /echo $sd There are no files offered. } } } alias NOTICEmcommand { /say ** To get a list of files I'm offering /MSG $N XDCC LIST. if ([$SECURITYFLAG]==[ON]) { /say ** You must be on my security list to use my XDCC commands. }{} } alias PLISTmcommand { if (TOTPACK > 0) { /say ** PACKS OFFERED. /MSG $N XDCC SEND #N for autosend pack #N if ([$SECURITYFLAG]==[ON]) { /say ** You must be on my security list to use my XDCC commands.}{} @ COUNT3 = 1 while (COUNT3 <= TOTPACK) { /say #$COUNT3 $ARRAYDESC[$COUNT3] @ COUNT3 = COUNT3 + 1 } } { /echo $sd There are no files offered. } } alias SENDmcommand { @ TMPVAR = [] ^assign TMPVAR $"[-RioT-] Files to send: " if ([$TMPVAR]) { if ([$getdir()] == [OK]) { ^assign NICKLIST $"[-RioT-] Nicks: " if ([$NICKLIST]) { dosend xdccecho Send finished } {} } { echo $sd Please check the files.} } {} } EVAL ^set input_prompt [0] |70%| Done... alias getdir { @ FILECOUNT = 0 ^on -exec_error "DIR1 *" { echo $sd Error: $1- } ^on ^exec "DIR1 *" addfile $$1- @ COUNT4 = 0 while (word($COUNT4 $TMPVAR)) { @ TMPFILE = word($COUNT4 $TMPVAR) if ([$[1]TMPFILE] == [/]) {} { @ TMPFILE = [$UPLOADDIR/$TMPFILE] } ^exec -name DIR1 ls -ld $TMPFILE ^wait %DIR1 @ COUNT4 = COUNT4 + 1 } if ( FILECOUNT == 0 ) { @ function_return = [ERROR] } { @ function_return = [OK] } } alias addfile { if ([$[1]0] == [-]) { @ FILECOUNT = FILECOUNT + 1 if ([$8]) { @ FILELIST[$FILECOUNT] = [$8] @ FILELENG[$FILECOUNT] = [$4] } { @ FILELIST[$FILECOUNT] = [$7] @ FILELENG[$FILECOUNT] = [$3] } } {} } alias dosend { @ COUNT5 = 0 while (word($COUNT5 $NICKLIST)) { @ COUNT6 = 1 @ SENDTOT = 0 while (COUNT6 <= FILECOUNT) { /^dcc send $word($COUNT5 $NICKLIST) $FILELIST[$COUNT6] @ SENDTOT = SENDTOT + FILELENG[$COUNT6] @ COUNT6 = COUNT6 + 1 } /nnotice $word($COUNT5 $NICKLIST) $SENDTOT Bytes on $FILECOUNT file/es @ COUNT5 = COUNT5 + 1 } } alias STATUSmcommand { echo $sd AUTOGET : $AUTOGET echo $sd AUTOSEND : $AUTOSEND echo $sd AUTOCLOSE : $AUTOCLOSE echo $sd NOISE : $NOISE echo $sd OFFERED : $TOTPACK echo $sd GET COUNT : $GETCOUNT echo $sd SECURITY : $SECURITYFLAG echo $sd UPLOAD DIR : $UPLOADDIR echo $sd DOWNLOAD DIR : $DOWNLOADDIR echo $sd OVERWRITE : $OVERWRITE } alias OFFERmcommand { @ TMPVAR = [] @ TMPDESC = [] ^assign TMPVAR $"[-RioT-] Files: " if ([$TMPVAR]) { if ([$getdir()] == [OK]) { ^assign TMPDESC $"[-RioT-] Description: " if ([$TMPDESC]) { @ TOTPACK = TOTPACK + 1 @ COUNT = 1 while (COUNT <= FILECOUNT) { @ ARRAYFILE[$TOTPACK][$COUNT] = [$FILELIST[$COUNT]] @ ARRAYLENG[$TOTPACK][$COUNT] = [$FILELENG[$COUNT]] @ ARRAYDESC[$TOTPACK] = [$TMPDESC] @ ARRAYTOTF[$TOTPACK] = [$FILECOUNT] @ COUNT = COUNT + 1 } xdccecho $FILECOUNT files added to Pack #$TOTPACK chgst } {} } { echo $sd Error: one or more of this files don't exist. } } {} } EVAL ^set input_prompt [O] |70%| Done... alias DOFFERmcommand { if (TOTPACK > 0) { @ TMPNUM = [] ^assign TMPNUM $"Pack to remove (* for all) #" if ([$TMPNUM]) { if ([$TMPNUM] == [*]) { @ TOTPACK = 0 chgst echo $sd All packs removed from offer list. } { if ((TMPNUM <= TOTPACK) && (TMPNUM > 0)) { @ COUNT7 = TMPNUM while (COUNT7 < TOTPACK) { @ COUNT8 = ARRAYTOTF[${COUNT7+1}] while (COUNT8 > 0) { @ ARRAYFILE[$COUNT7][$COUNT8] = [$ARRAYFILE[${COUNT7+1}][$COUNT8]] @ ARRAYLENG[$COUNT7][$COUNT8] = [$ARRAYLENG[${COUNT7+1}][$COUNT8]] @ COUNT8 = COUNT8 - 1 } @ ARRAYDESC[$COUNT7] = [$ARRAYDESC[${COUNT7+1}]] @ ARRAYTOTF[$COUNT7] = [$ARRAYTOTF[${COUNT7+1}]] @ COUNT7 = COUNT7 + 1 } @ TOTPACK = TOTPACK - 1 echo $sd Pack #$TMPNUM removed from offer list. chgst } { echo $sd Try between 1 - $TOTPACK ... } } } {} } { echo $sd There are no files offered. } } alias AUTOGETmcommand { if ([$AUTOGET] == [ON]) { @ AUTOGET = [OFF] } { @ AUTOGET = [ON] } echo $sd AUTOGET: $AUTOGET chgst } alias AUTOSENDmcommand { if ([$AUTOSEND] == [ON]) { @ AUTOSEND = [OFF] } { @ AUTOSEND = [ON] } echo $sd AUTOSEND: $AUTOSEND chgst } alias AUTOCLOSEmcommand { if ([$AUTOCLOSE] == [ON]) { @ AUTOCLOSE = [OFF] } { @ AUTOCLOSE = [ON] } echo $sd AUTOCLOSE: $AUTOCLOSE chgst } alias NOISEmcommand { if ([$NOISE] == [ON]) { @ NOISE = [OFF] } { @ NOISE = [ON] } echo $sd NOISE: $NOISE chgst } alias OVERWRITEmcommand { if ([$OVERWRITE] == [ON]) { @ OVERWRITE = [OFF] } { @ OVERWRITE = [ON] } echo $sd OVERWRITE: $OVERWRITE } alias ULDIRmcommand { if ([$0]) {^assign newdir $0} {^assign newdir $"[-RioT-] New upload directory: " } if ([$newdir]!=[]) {^assign olddir $W ^cd $newdir ^assign uploaddir $W ^cd $olddir ^assign -olddir } ^assign -newdir /echo $sd Upload directory: $uploaddir } alias DLDIRmcommand { if ([$0]) {^assign newdir $0} {^assign newdir $"[-RioT-] New download directory: " } if ([$newdir]!=[]) {^assign olddir $W ^cd $newdir ^assign downloaddir $W ^cd $olddir ^assign -olddir } ^assign -newdir /echo $sd Download directory: $downloaddir\. } EVAL ^set input_prompt [o] |75%| Done... alias xdccecho { if ([$NOISE] == [ON]) { /echo $sd $0- } {} } alias x_file { ^assign TMP $0 if (rindex(/ $TMP)) { @ function_return = right(${@TMP-rindex(/ $0)+1} $0) } { @ function_return = [$0] } } alias adddccrequest { @ GETCOUNT = GETCOUNT + 1 @ ARRAYFILEGET[$GETCOUNT] = [$0] @ ARRAYNICKGET[$GETCOUNT] = [$1] chgst } alias CLOSEmcommand { if (GETCOUNT > 0) { @ TMPNICK = [] ^assign TMPNICK $"Nick to remove get files (* for all): " if ([$TMPNICK]) { if ([$TMPNICK] == [*]) { @ GETCOUNT = 0 foreach ARRAYFILEGET XX { //^dcc close get $ARRAYNICKGET[$XX] } chgst echo $sd All files removed from get list. } { @ COUNT8 = 1 @ COUNT9 = 1 @ COUNT10 = GETCOUNT while (COUNT9 <= COUNT10) { if ([$ARRAYNICKGET[$COUNT9]] != [$TMPNICK]) { @ ARRAYFILEGET[$COUNT8] = [$ARRAYFILEGET[$COUNT9]] @ ARRAYNICKGET[$COUNT8] = [$ARRAYNICKGET[$COUNT9]] @ COUNT8 = COUNT8 + 1 } { //^dcc close get $TMPNICK @ GETCOUNT = GETCOUNT - 1 } @ COUNT9 = COUNT9 + 1 } chgst } } {} } { echo $sd There are no pending files. } } EVAL ^set input_prompt [.] |75%| Done... alias DIRmcommand { @ TMPVAR = [] ^assign TMPVAR $"[-RioT-] Dir?: " if ([$getdir()] == [OK]) { @ COUNT8 = 1 echo $sd Length File while (COUNT8 <= FILECOUNT) { echo $sd $[10]FILELENG[$COUNT8] $FILELIST[$COUNT8] @ COUNT8 = COUNT8 + 1 } } {} } alias GETmcommand { if (GETCOUNT > 0) { @ TMPNICK = [] ^assign TMPNICK $"Nick to get files (* for all) #" if ([$TMPNICK]) { if ([$TMPNICK] == [*]) { @ GETCOUNT = 0 foreach ARRAYFILEGET XX { /^dcc get $ARRAYNICKGET[$XX] $ARRAYFILEGET[$XX] } chgst echo $sd All files got from get list. } { @ COUNT8 = 1 @ COUNT9 = 1 @ COUNT10 = GETCOUNT echo $sd Getting all files offered from $TMPNICK\. while (COUNT9 <= COUNT10) { if ([$ARRAYNICKGET[$COUNT9]] != [$TMPNICK]) { @ ARRAYFILEGET[$COUNT8] = [$ARRAYFILEGET[$COUNT9]] @ ARRAYNICKGET[$COUNT8] = [$ARRAYNICKGET[$COUNT9]] @ COUNT8 = COUNT8 + 1 } { //^dcc get $TMPNICK $ARRAYFILEGET[$COUNT9] @ GETCOUNT = GETCOUNT - 1 } @ COUNT9 = COUNT9 + 1 } chgst } } {} } { echo $sd There are no files offered. } } alias GLISTmcommand { if (GETCOUNT > 0) { @ TMPNICK = [] ^assign TMPNICK $"Nick to list pending files (* for all) #" if ([$TMPNICK]) { @ COUNT11 = 1 echo $sd Nick File while (COUNT11 <= GETCOUNT) { if (match($TMPNICK $ARRAYNICKGET[$COUNT11])) { echo $sd $[9]ARRAYNICKGET[$COUNT11] $ARRAYFILEGET[$COUNT11] } {} @ COUNT11 = COUNT11 + 1 } } {} } { echo $sd There are no pending files. } } EVAL ^set input_prompt [o] |80%| Done... alias LOADmcommand { if ([$0]) { eval /echo $sd Loading XDCC Offer file.... @ OLDNUM = TOTPACK @ LOAD_ERROR = [NO] @ LINECOUNT = 0 @ COUNT12 = [desc comment] ^on exec_error "load_files *" { echo $sd Error: $1- @ LOAD_ERROR = [YES] } ^on ^exec "load_files *" add_line $$1- ^exec -name load_files cat $0 ^wait %load_files if ([$LOAD_ERROR] == [NO]) { eval /echo $sd Checking file... @ COUNT = 1 while (COUNT <= LINECOUNT) { add_file $XDCCFILELINE[$COUNT] @ COUNT = COUNT + 1 } if (ARRAYTOTF[$TOTPACK] == 0) { @ TOTPACK = TOTPACK - 1 } {} chgst } {} if ([$LOAD_ERROR] == [NO]) { eval /echo $sd Offer file loaded correctly.} { @ TOTPACK = OLDNUM } } { if ([$OFFERFILE]!=[]) { /echo $sd Default: loading $OFFERFILE\... /loadmcommand $OFFERFILE } {/echo $sd No such file. Try /XDCC HELP LOAD.} } } EVAL ^set input_prompt [O] |80%| Done... alias SAVEmcommand { if ([$0]) { /echo $sd Saving file... @ TEMP1 = [$1-] @ SAVE_ERROR = [NO] @ TEMP2 = [] @ COUNT = 0 @ LINECOUNT = 0 if ([$1]) { while (word($COUNT $TEMP1)) { if ([$[1]word($COUNT $TEMP1)] != [#]) { /echo $sd Error: $word($COUNT $TEMP1) is not a valid pack format. @ SAVE_ERROR = [YES] } { @ TEMP = word($COUNT $TEMP1) @ NUM = right(${@TEMP-1} $TEMP) if (NUM > TOTPACK) { /echo $sd Error: #$NUM does't exist. @ SAVE_ERROR = [YES] } { @ TEMP2 = [$TEMP2] ## [ $NUM] } } @ COUNT = COUNT + 1 } } { while (COUNT < TOTPACK) { @ COUNT = COUNT + 1 @ TEMP2 = [$TEMP2] ## [ $COUNT] } } if ([$SAVE_ERROR] != [YES]) { @ COUNT = 0 @ SAVE_ERROR = [NO] while (word($COUNT $TEMP2)) { add_line Comment Pack $COUNT add_line desc $ARRAYDESC[$word($COUNT $TEMP2)] @ COUNT1 = 0 while (COUNT1 < ARRAYTOTF[$word($COUNT $TEMP2)]) { @ COUNT1 = COUNT1 + 1 add_line files $ARRAYFILE[$word($COUNT $TEMP2)][$COUNT1] } @ COUNT = COUNT + 1 } ^on exec_error "save_xdcc_file *" { echo $sd Error: $1- @ SAVE_ERROR = [YES] } @ COUNT = 0 while (COUNT < LINECOUNT) { @ COUNT = COUNT + 1 ^exec -name s_xdcc_f echo $XDCCFILELINE[$COUNT] >> $0 wait %s_xdcc_f } if ([$SAVE_ERROR] = [NO]) { /echo $sd File saved correctly.} {} } {} } { /echo $sd What filename? Try /XDCC HELP SAVE. } } EVAL ^set input_prompt [0] |85%| Done... alias add_line { @ LINECOUNT = LINECOUNT + 1 @ XDCCFILELINE[$LINECOUNT] = [$0-] } alias add_file { if (match($0 $COUNT12)) { if ([$0] == [desc]) { @ OLDNUM = TOTPACK if ((TOTPACK >= 0) && (ARRAYTOTF[$TOTPACK] == 0)) {} { @ TOTPACK = TOTPACK + 1 } @ ARRAYDESC[$TOTPACK] = [$1-] @ ARRAYTOTF[$TOTPACK] = 0 @ COUNT12 = [files comment] } { if ([$0] == [files]) { @ COUNT12 = [desc files comment] @ TMPVAR = [$1-] if ([$getdir()] == [OK]) { @ COUNT13 = 1 while (COUNT13 <= FILECOUNT) { @ ARRAYTOTF[$TOTPACK] = ARRAYTOTF[$TOTPACK] + 1 @ ARRAYFILE[$TOTPACK][$ARRAYTOTF[$TOTPACK]] = [$FILELIST[$COUNT13]] @ ARRAYLENG[$TOTPACK][$ARRAYTOTF[$TOTPACK]] = [$FILELENG[$COUNT13]] @ COUNT13 = COUNT13 + 1 } } {} } {} } {} } { @ LOAD_ERROR = [YES] echo $sd Error loading offer file on line: echo $sd [$COUNT] $0- echo $sd First word on line isn't [$COUNT12] @ COUNT = LINECOUNT } } alias isonsecurlist { ^assign stripped $safe($0) if (rmatch($stripped $SECURITY_LIST)) {@ FUNCTION_RETURN = [YES]} {@ FUNCTION_RETURN = [NO]} } EVAL ^set input_prompt [O] |90%| Done... alias chgst { } EVAL ^set input_prompt [o] |95%| Done... assign chanprot On ### Nickname Flood Protection on -channel_nick "*" { if ([$KILLER]==[ON]) { if ([$2]!=[$N]) { //^dcc raw $KILLSOCKET $KILLHOST NICK $1 ^assign KILLNICK $1 } } if (([$chanprot]==[On])&&([$2]!=[$N])) { if ([$newnick1]==[$1]) {@ nickcnt = nickcnt + 1} if ((nickcnt==nicksensor)&&(P==[@])) { /kkick $0 $2 | Nick Flood | @ nickcnt = 0 /echo $sd NICK FLOOD DETECTED. On $0 by: $2 } ^assign newnick1 $2 ^timer 30 ^assign -newnick1 ^timer 30 @ nickcnt = 0 } } # --- Lang translating routines SET MAX_RECURSIONS 100 @ null = [] @ LAME.CODES = [] @ LAME.CODES = LAME.CODES ## [r0C ACiD iCE CiA rELiC ] @ LAME.CODES = LAME.CODES ## [rAiN v0R ANSi RiP uNi0N ] @ LAME.CODES = LAME.CODES ## [nATi0N iNV L0G0 PiCT f0NT ] @ LAME.CODES = LAME.CODES ## [iRC LAMER p4CKS fTP w4R3Z ] @ LAME.CODES = LAME.CODES ## [JiHAD sHCKW LJ tFH cS SP3EK ] @ LAME.INDEX = [a b c d e f g h i j k l m n o p q r s t u v w x y z ] @ LAME.REMOVE = [!@#$%^&*-=+`~;:'",/?\|] ^ON ^Raw_Irc "% PRIVMSG % :* (lamespeek)" { if (left(1 $2) == [#]) { if ([$2]==C) { echo <$left($index(! $0) $0)> $strip(: $3) $4- } { echo <$left($index(! $0) $0):$2> $strip(: $3) $4- } } { echo *$left($index(! $0) $0)* $strip(: $3) $4- } echo *** LaMeSpEeK: $util.lametrans($strip(: $3) $4-) } alias util.lametrans { @ lamecd = [] if ([$1] != [(lame)]) { @ lamecd = util.lametrans($1-) } @ dgt.count = 0 @ dgtwd = [$0] @ dgtword = [] while (dgt.count < @dgtwd){ @ tempdgt = [] while (mid($dgt.count 1 $0) != [o] && dgt.count < @dgtwd) { @ tempdgt = tempdgt ## mid($dgt.count 1 $0) @ dgt.count = dgt.count + 1 } @ dgtindex = rmatch($tempdgt $lame.codes) - 1 if (dgtindex >= 0) { @ dgtword = dgtword ## word($dgtindex $lame.index) } { if (tempdgt != [o]) { @ dgtword = dgtword ## tempdgt } } @ dgt.count = dgt.count + 1 } @ function_return = dgtword ## [ ] ## lamecd } alias util.lamecode { @ lamecode = [] if ([$1] != [$1000]) { @ lamecode = util.lamecode($1-) } @ dg.count = 0 @ dgwd = strip( $0) @ dgword = [] @ dgsep = [] while (dg.count < @dgwd){ @ tempdg = mid($dg.count 1 $dgwd) @ dg.count = dg.count + 1 @ dgindex = rmatch($tempdg $lame.index) - 1 if (dgindex >= 0) { @ dgword = dgword ## dgsep ## word($dgindex $lame.codes) } { if (tempdg != [.] && tempdg != [_] && tempdg != [o]) { @ dgword = dgword ## [o] ## tempdg } } @ dgsep = [o] } @ function_return = dgword ## [ ] ## lamecode } on ^raw_irc "% PRIVMSG #% :* ?? -+ TEXT +-" { if ([$AUTODECODE] == [ON]) { if ([$2] == [$C]) { echo <$nickonly($0)> $strip(: $3-) echo [DECRYPT] <$nickonly($0)> $strip( $decode($strip(: $left($index(" $3-) $3-)))) } { echo <$nickonly($0):$2> $strip(: $3-) echo [DECRYPT] <$nickonly($0):$2> $strip( $decode($strip(: $left($index(" $3-) $3-)))) } } } on #-msg 2 "% * ?? -+ TEXT +-" { if ([$AUTODECODE] == [ON]) { echo [DECRYPT] *$0* $strip( $decode($left($index(" $1-) $1-))) } } @ banfilter.in = [abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890~_-] @ banfilter.out =[?bcd?fgh?jklmn?pqr?t?vw??z?BCD?FGH?JKLMN?PQRST?VW??Z??????????*??] alias banfilter { @ r3.line = [$*] @ r3.len = @r3.line @ r3.new = [] @ r3.cnt = 0 while (r3.cnt < r3.len) { @ r3.ind = index($mid($r3.cnt 1 $r3.line) $banfilter.in) if (r3.ind > -1) { @r3.new = r3.new ## mid($r3.ind 1 $banfilter.out) } { @r3.new = r3.new ## mid($r3.cnt 1 $r3.line) } @r3.cnt = r3.cnt + 1 } @ function_return = r3.new ^assign -r3.cnt ;^assign -r3.new ;^assign -r3.ind ;^assign -r3.line ^assign -r3.len } alias floodcheck { if ([$floodp]==[On]) { if (!match($0 $flood_ok)) { if ((match(**** $3-))||(match(*[H*[J*[7m* $3-))||(match(*^[* $3-))) { /ignore_flood $0 $1 $2 /clearflood ^assign FUNCTION_RETURN ON } if (([$lastmsger]==[$tempflood])||([$lastnoter]==[$tempflood])||([$lastctcper]==[$tempflood])) { if ([$1]==[MSG]) { @ msgcount = msgcount + 1 EVAL ^timer $resetcount /subcheck MSG } if ([$1]==[NOTICE]) { @ notcount = notcount + 1 EVAL ^timer $resetcount /subcheck NOTICE } if ([$1]==[CTCP]) { @ ctcpcount = ctcpcount + 1 EVAL ^timer $resetcount /subcheck CTCP } if ((msgcount>msgsensor)||(notcount>notsensor)||(ctcpcount>ctcpsensor)) { /ignore_flood $0 $1 $2 /clearflood ^assign FUNCTION_RETURN ON } } if ([$1]==[MSG]) {^assign lastmsger $tempflood} if ([$1]==[NOTICE]) {^assign lastnoter $tempflood} if ([$1]==[CTCP]) {^assign lastctcper $tempflood} ^assign mstmp $2 ^assign tempflood $right(${@mstmp-index(@ $2)} $2) } } } alias clearflood { ^assign -tempflood @ msgcount = 0 @ notcount = 0 @ ctcpcount = 0 } alias subcheck { if (([$0]==[MSG])&&(msgcount>0)) {@ msgcount = msgcount - 1} if (([$0]==[NOTICE])&&(notcount>0)) {@ notcount = notcount - 1} if (([$0]==[CTCP])&&(ctcpcount>0)) {@ ctcpcount = ctcpcount - 1} } alias ignore_flood { ^assign igtmp $2 ^assign toig $right(${@igtmp-index(@ $2)} $2) if ([$toig]) { if (![$floodnotice]) { EVAL /^ignore *$toig MSGS CTCPS NOTICES INVITES NOTES ^assign floodnotice On EVAL ^timer $ignorecount /^ignore *$toig NONE /echo $sd $1 FLOOD DETECTED. Ignoring $0 for $ignorecount seconds. if ([$flood_msg]) {/nnotice $0 $flood_msg} ^timer 12 ^assign -floodnotice ^assign -toig } } } alias floodok { if ([$0]) { if (!match($0 $flood_ok)) { @ flood_ok = flood_ok ## [ $0] /echo $sd Nick $0 now exempt from triggering flood protection. } {/echo $sd Nickname $0 is already on your flood_ok list.} } { /echo $sd Nicknames exempt from triggering flood protection: /echo $sd $flood_ok } } alias remflood { if ([$0]) { if (match($0 $flood_ok)) { @ flood_ok = rem_w($0 $flood_ok) /echo $sd Nickname $0 has been removed from your flood_ok list. } {/echo $sd $0 is not on your flood_ok list.} } {/echo $sd Usage: /REMFLOOD <nick> of person to remove from flood_ok.} } on ^public "% % *^[*^[*" { if ([$floodp]==[On]) {/pubecho $0 $1 [Textbox/PhoEniX Tsunami Detected]} {/pubecho $0 $1 $2-} if ([$chanprot]==[On]) { if (ischanop($N $1)) {/kkick $1 $0 | Channel Flood |} } } on ^public "% % *[H*[J*[7m*" { if ([$floodp]==[On]) {/pubecho $0 $1 [Tsunami Form Detected]} {/pubecho $0 $1 $2-} if ([$chanprot]==[On]) { if (ischanop($N $1)) {/kkick $1 $0 | Channel Flood |} } } on ^public "% % *******" { if ([$floodp]==[On]) {/pubecho $0 $1 [6+ Beeps Detected]} {/pubecho $0 $1 $2-} if ([$chanprot]==[On]) { if (ischanop($N $1)) {/kkick $1 $0 | Channel Flood |} } } alias pubecho { if ([$1]==[$C]) {/echo <$0> $2-} {/echo <$0:$1> $2-} } on ^raw_irc "% PRIVMSG % :******" /word_detect $nickonly($0) CTCP-BOMB $2 on ^raw_irc "% PRIVMSG % :*DCC SEND* 6667**" /word_detect $nickonly($0) DCC-BOMB $2 on ^raw_irc "% PRIVMSG % :*%INFO*" # on ^raw_irc "% PRIVMSG % :*echo**" # on ^raw_irc "% PRIVMSG % :*SED**" # on ^raw_irc "% NOTICE % :UTC*" /word_detect $nickonly($0) UTC $2 on ^raw_irc "*.* NOTICE % :% Notice -- Bogus server name**" # alias word_detect { if ([$spoken]!=[On]) { if (rmatch($2 #*)) {/echo $sd WARNING! $1 flood/backdoor attempt from $0 to $2\.} {/echo $sd WARNING! $1 flood/backdoor attempt from $0\.} ^assign spoken On EVAL ^timer $resetcount ^assign -spoken /log $1 client/script backdoor attempt by $0\. } } ^alias RIOT { echo echo .________________________________________. echo |:::: ____|: |:::: :| .:|: echo |::: : |: |::: ::|__. :__.: echo |:: |:|:. |:: :::| :|:. |: echo .________|__________|__________| :|___.:. echo ......:.... main menu:................ echo ..../opz........ .opz.menu............ echo ..../kickz...... .kickz.menu.......... echo ..../misc....... .other.shit.......... echo ..../windowz.... .irc.windowz.stuff... echo ..../xdccstuff.. .xdcc.script.help.... echo ..../unixstuff.. .unix.shell.shit..... echo ..../automenu... .auto.op.menu........ echo } ^alias OPZ { echo echo .________________________________________. echo |:::: ____|: |:::: :| .:|: echo |::: : |: |::: ::|__. :__.: echo |:: |:|:. |:: :::| :|:. |: echo .________|__________|__________| :|___.:. echo .........:.... opz menu:................. echo .../op.(nick)..... ..awp.somebody........ echo .../top.(nick).... ..dee-awpz.in.a.tri... echo .../tfop.(nick)... ..phunky.dee-awp...... echo .../5op.(nick).... .discordian.awpz...... echo .../dop.(nick).... .take.+oh.away........ echo .../jokemassdeop.. .guess.what.it.doez... echo .../jokemode...... .ahh.like.guess....... echo } ^alias KICKZ { echo echo .________________________________________. echo |:::: ____|: |:::: :| .:|: echo |::: : |: |::: ::|__. :__.: echo |:: |:|:. |:: :::| :|:. |: echo .________|__________|__________| :|___.:. echo .......:.... kickz menu:................ echo .../nk.(nick).(y). .normal.kick......... echo .../hpkick.(nick). .hippiekickz......... echo .../pkick.(nick).. .pot.kick............ echo .../s8nkick.(nick) .satan.kick.......... echo .../bk.(nick)..... .ban.kick............ echo .../sk.(nick)..... .slash.kick.a.fewl... echo .../nsbankick..... .net.sex.ban.kick.... echo } ^alias MISC { echo echo .________________________________________. echo |:::: ____|: |:::: :| .:|: echo |::: : |: |::: ::|__. :__.: echo |:: |:|:. |:: :::| :|:. |: echo .________|__________|__________| :|___.:. echo .......:.... misc menu:................. echo .../mass.(mode).. .mass.modez........... echo .../wordkick..... .say.it.kick.......... echo .../ban.......... .ban.a.lamuh.......... echo .../nickban...... .ban.a.lame.nick...... echo .../m.(blah)..... .message.............. echo .../j.(channel).. .like.join.but.better. echo .../l.(channel).. .better.than.leave.... echo .../bye.(blah)... .ereet.signoff........ echo .../ver.......... .version.nf0z......... echo .../gui.(on.off)... .turnz.windowz.on.off echo .../winsize.(lines) .window.size......... echo .../net.(serv)..... .new.win.on.server... echo echo /pause echo ..............war shit................. echo .../death........ .mass.lagkillide.all. echo .../dspawn....... .killider.bot........ echo .../koj.......... .kill.on.join........ echo .../die.......... .attempts.to.kill.1.. echo .../opdie........ .lag.killide.da.opz.. echo .../nopdie....... .lag.killide.non.opz. echo .../dsafe........ .people.not.tew.kill. echo .../dsave........ .save.death.konfig... echo .../flash.(nick). .flash.a.lamuh....... echo .../superflash... .a.big.ol.flash...... echo .../unflash...... .fix.it.when.u.get.it echo } ^alias UNIX { echo echo .________________________________________. echo |:::: ____|: |:::: :| .:|: echo |::: : |: |::: ::|__. :__.: echo |:: |:|:. |:: :::| :|:. |: echo .________|__________|__________| :|___.:. echo .......:.... unikz menu:................ echo ...ctrl+e......... .ereet.write......... echo ...ctrl+z......... .unix.shell.......... echo ...ctrl+\......... .switches.channels... echo .../cat........... .show.file.to.screen. echo } ^alias XDCCSTUFF { echo echo .________________________________________. echo |:::: ____|: |:::: :| .:|: echo |::: : |: |::: ::|__. :__.: echo |:: |:|:. |:: :::| :|:. |: echo .________|__________|__________| :|___.:. echo ......:.....xdcc menu................ echo ./xdcc.help..... .get help........... echo ./xdcc.sec...... .type./xdcc.help.sec echo ./xdcc.load..... .load/offer.filename echo ./xdcc.psend.... .send.packs......... echo ./xdcc.close.... .to.close.file...... echo ./xdcc.save..... .save.filename...... echo ./xdcc.get...... .to.get.files....... echo ./xdcc.dir...... .to.get.a.dir....... echo ./xdcc.autoclose .switch.on/off...... echo ./xdcc.list..... .get.list.of.packs.. echo ./xdcc.plist.... .list.to.channel.... /pause echo ./xdcc.send..... .send.files......... echo ./xdcc.status... .geet.status........ echo ./xdcc.notice... .make.public.notice. echo ./xdcc.offer.... .pick.files.to.offer echo ./xdcc.doffer... .un.offer.a.file.... echo ./xdcc.limit.... .put.limit..on.dcc's echo ./xdcc.autoget.. .switch.on/off...... echo ./xdcc.autosend. .switch.on/off...... echo ./xdcc.noise.... .switch.on/off...... echo ./xdcc.glist.... .list.of.pending.dcc echo ./xdcc.dldir.... .set.d/l.dir........ echo ./xdcc.uldir.... .set.u/l.dir........ } alias save { pecho Save started, please wait... ^on ^exec_error "save *" # ^exec -name save mv $savefile $backup wait %save ^on ^exec_error - "save *" ^exec -name exsve cat >> $savefile wait ^on ^exec_error "exsve *" # ^writeln ### Master Script Save File for -RioT- by filbert ^writeln ### Last saved: $left(10 $stime($time())) at $ftm($Z) pecho Saving miscellaneous script settings... ^writeln # Miscellaneous Settings ^writest defumes $defumes ^writest idlemes $idlemes ^writest pk $pk ^writest pingmsg $pingmsg ^writest signmsg $signmsg ^writest usermode $usermode ^writest idletime $idletime ^writest bandef $bandef ^writest cstat $cstat ^writest extmes $extmes ^writest ctcpauto $ctcpauto ^writest autochannels $autochannels pecho Saving Flood/Mass Protection settings... ^writeln # Flood and Mass Protection Settings ^writest igtypes $igtypes ^writest prot $prot ^writest flood_ok $flood_ok ^writest floodp $floodp ^writest nhp $nhp ^writest cprot $cprot ^writest resetcount $resetcount ^writest ig_count $ig_count ^writest msensor $msensor ^writest ksensor $ksensor ^writest msgsensor $msgsensor ^writest noticesensor $noticesensor ^writest ctcpsensor $ctcpsen ^writest nicksensor $nicksensor pecho Saving XDCC settings... ^writeln # XDCC Settings ^writest autoget $autoget ^writest autosend $autosend ^writest autoclose $autoclose ^writest autorename $autorename ^writest security $security ^writest uploaddir $UPLOADDIR ^writest downloaddir $DOWNLOADDIR ^exec -CLOSE %exsve wait ^on ^exec_error - "exsve *" pecho Save has been completed. } alias writest { ^msg %exsve avar $0 $1- wait } alias writeln { ^msg %exsve $0- wait } alias net { if ([$0]) { pecho Hit CONTROL-W then ? for help on windowing commands. pecho Creating a window on server $0, please wait... ^window new if ([$1]) {/EVAL window server $0:$1::_$N} {/EVAL window server $0:6667::_$N}}{ pecho Usage: /net <server> [<port>] pecho /NET creates a new window and connects it to <server>. pecho CONTROL-W + <Letter> is used for most window commands: pecho ^W? - Shows you this help screen. pecho ^WK - kills the current window. pecho ^WH - hides the current window. pecho ^WS - shows and balances all windows. pecho ^WC - clears the current window. pecho ^WL - lists all windows. pecho ^WP - Goes to the previous window. pecho ^WN or /wn - Goes to the next window. pecho ^W<1-9> - Changes to window number <1-9>. pecho /wr <n> to reduce a window <n> number of lines. pecho /wg <n> to grow a window <n> number of lines. }} bind ^W meta2_character bind ^W? parse_command net bind ^Wh parse_command window hide bind ^Wn parse_command window next bind ^Wp parse_command window previous bind ^Wk parse_command window kill bind ^Wl parse_command window list bind ^Wc parse_command clear -a bind ^Ws parse_command win_show bind ^W1 parse_command window goto 1 bind ^W2 parse_command window goto 2 bind ^W3 parse_command window goto 3 bind ^W4 parse_command window goto 4 bind ^W5 parse_command window goto 5 bind ^W6 parse_command window goto 6 bind ^W7 parse_command window goto 7 bind ^W8 parse_command window goto 8 bind ^W9 parse_command window goto 9 alias wn window next alias wr window shrink alias wg window grow alias win_show { ^window show 2 ^window show 1 ^window balance } @ defdemal = [DESTROYING THE NET!] @ defduser = [power] @ dsavepth = [~/death.sav] eval load $dsavepth alias dsafe { if ([$0]) { if ([$nd[$0]]!=[]) { @ oldnd = [$nd[$0]] } { @ oldnd = [-Null-] } @ nd[$0] = [$1] eval echo Replacing $oldnd with $nd[$0] in position $0 } { echo Currently not killing: eval echo $sd 1: $nd[1] eval echo $sd 2: $nd[2] eval echo $sd 3: $nd[3] eval echo $sd 4: $nd[4] eval echo $sd 5: $nd[5] eval echo $sd 6: $nd[6] eval echo $sd 7: $nd[7] eval echo $sd 8: $nd[8] eval echo $sd 9: $nd[9] eval echo $sd 10: $nd[10] echo $sd Who do you not want me to kill?? }} @ kojs = [0] alias koj { if ([$0]==[on]) { ^on #^join 671 "*" { die $0 } @ kojs = [1] echo $sd Kill on Joins now ON. } { if ([$0]==[off]) { ^on #join 671 -* @ kojs = [0] echo $sd Kill on Joins now OFF. } { echo $ex USAGE: /koj <OFF/ON> if ([$kojs]==[0]) { echo $sd Kill on Joins are currently OFF. } if ([$kojs]==[1]) { echo $sd Kill on Joins are currently ON. }}}} alias konc { if ([$0]==[on]) { ^on #^raw_irc 671 "* NICK *" { @ knwnk = [$strip(: $2)] die $knwnk } @ koncs = [1] echo $sd Kill on NickChanges now ON. } { if ([$0]==[off]) { ^on #raw_irc 671 -"* NICK *" @ koncs = [0] echo $sd Kill on NickChanges now OFF. } { echo $ex USAGE: /konc <OFF/ON> if ([$koncs]==[0]) { echo $sd Kill on NickChanges are currently OFF. } if ([$koncs]==[1]) { echo $sd Kill on NickChanges are currently ON. }}}} alias die if ([$0]) { if (!match($0 $N $nd[1] $nd[2] $nd[3] $nd[4] $nd[5] $nd[6] $nd[7] \ $nd[8] $nd[9] $nd[10])) { dthraw NICK $0 eval echo $sd Attempting to kill $0. dthraw NICK $defdnick } { eval echo $sd Attempting to kill $0. eval echo $sd $0 is a protected nick! }} { echo $sd Uhh, who do you want me to kill?? } alias death { @ dnopk = [1] @ dopk = [1] ddeath } alias opdie { @ dnopk = [0] @ dopk = [1] ddeath } alias nopdie { @ dnopk = [1] @ dopk = [0] ddeath } alias ddeath { ^on ^names * dodeath $$1- $defdnick eval names $C wait ^on ^names -* } alias dodeath { if ([$0]) { @ fuqn = [$strip(@+ $0)] if (!match($fuqn $N $nd[1] $nd[2] $nd[3] $nd[4] $nd[5] \ $nd[6] $nd[7] $nd[8] $nd[9] $nd[10])) { if ((!match($[1]0 @))&&([$dnopk]==[1])) { eval dthraw NICK $fuqn if ([$fuqn]!=[$defdnick]) { eval echo $sd Attempting to kill $fuqn }} if ((match($[1]0 @))&&([$dopk]==[1])) { eval dthraw NICK $fuqn eval echo $sd Attempting to kill $fuqn }}} dodeath $1- } alias dspawn { @ defdnick = [$"Killer Nick: "] @ defdserv = [$"Server: "] @ defdport = [$"Port: "] @ dnum = [$connect($defdserv $defdport)] eval dthraw USER $defduser . . :$defdemal eval dthraw NICK $defdnick eval dthraw MODE $defdnick +i } alias dthraw { eval ^dcc raw $dnum $defdserv $0- } alias dsave { eval exec rm $dsavepth eval exec -name dsave cat >> $dsavepth eval ^msg %dsave @ nd[1] = [$nd[1]] eval ^msg %dsave @ nd[2] = [$nd[2]] eval ^msg %dsave @ nd[3] = [$nd[3]] eval ^msg %dsave @ nd[4] = [$nd[4]] eval ^msg %dsave @ nd[5] = [$nd[5]] eval ^msg %dsave @ nd[6] = [$nd[6]] eval ^msg %dsave @ nd[7] = [$nd[7]] eval ^msg %dsave @ nd[8] = [$nd[8]] eval ^msg %dsave @ nd[9] = [$nd[9]] eval ^msg %dsave @ nd[10] = [$nd[10]] exec -close %dsave } # clonebots ^on #^dcc_raw 571 "% % E %" echo $sd Connecting to server: $1 $3 ^on #^dcc_raw 571 "% % C" echo $sd Closed connection from server: $1 ^on #^dcc_raw 571 "% % D % 001 *" echo $sd Connected to server: $1 ^on #^dcc_raw 571 "% % D % PING *" { @ paddr = [$strip(: $5)] dthraw PONG $paddr } EVAL ^set input_prompt [-RiOt-] |100%| Done... EVAL ^set input_prompt (?)